Cardinality Analysis of Prolog
نویسندگان
چکیده
This paper proposes a novel analysis, called cardinality analysis, to approximate the number of solutions to a goal. The analysis is an instantiation of a new abstract interpretation framework for full Prolog (without dynamic predicates) based on sequences of substitutions. The abstract domain captures not only modes and types but also lower and upper bounds on the number of solutions and information about arithmetic and meta predicates, the cut, and termination. Experimental results show that the approach has a number of desirable properties wrt eeciency, accuracy, and simplicity not available in previous work. In particular, all aspects of the analysis are captured in a single framework, the mode/type analysis and the cardinality analysis are performed simultaneously and improve each other's accuracy, input/output patterns, cut, termination, and abstractions of arithmetic and meta-predicates are used to achieve great precision, and the overhead of the approach is small compared to traditional mode/type analyses.
منابع مشابه
tarfa: Tableaux and Resolution for Finite Abduction
n-tableaux [1] and δ-resolution [2], which are based, respectively, on semantic tableaux and resolution, have been properly used for the resolution of abductive problems. The tool we present is a Prolog implementation of an abductive solver which combines both calculi to attack first order abductive problems by reducing them to finite versions, that is, propositional rewritings of the problems ...
متن کاملAutomated Verification of Behavioural Properties of Prolog Programs
Program veriication is a crucial issue in the eld of program development, compilation and debugging. In this paper, we present an analyser for Prolog which aims at verifying whether the execution of a program behaves according to a given speciication (behavioural assumptions). The analyser is based on the methodology of abstract interpretation. A novel notion of abstract sequence is introduced,...
متن کاملNoMoRe : Non-monotonic Reasoning with Logic Programs
The non-monotonic reasoning system noMoRe [2] implements answer set semantics for normal logic programs. It realizes a novel, rule-based paradigm to compute answer sets by computing non-standard graph colorings of the block graph associated with a given logic program (see [6, 8, 7] for details). These non-standard graph colorings are called a-colorings or application-colorings since they reflec...
متن کاملProbLog: A Probabilistic Prolog and Its Application in Link Discovery
A general framework for minimisation-based belief change is presented. A problem instance is made up of an undirected graph, where a formula is associated with each vertex. For example, vertices may represent spatial locations, points in time, or some other notion of locality. Information is shared between vertices via a process of minimisation over the graph. We give equivalent semantic and sy...
متن کاملInitial Results on the F-logic to OWL Bi-directional Translation on a Tabled Prolog Engine
In this paper, we show our results on the bi-directional data exchange between the F-logic language supported by the Flora2 system and the OWL language. Most of the TBox and ABox axioms are translated preserving the semantics between the two representations, such as: proper inclusion, individual definition, functional properties, while some axioms and restrictions require a change in the semant...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1994